Turbo Product Codes and Channel Capacity
نویسندگان
چکیده
An important goal for a new communication system is to transfer information at a high rate while keeping energy consumption low. Shannon's channel capacity sets a limit on the tradeoff between the rate of information transfer and the required energy. In this paper the performance of turbo block coding is compared to Shannon's limit for binary communications over a channel with thermal noise. The turbo product code is a relatively new code that offers a wide range of flexibility in terms of performance, complexity, and code rate. The results of this paper will show that in comparison to a standard convolutional code the turbo product code uses less power and permits a higher data rate for a given bandwidth requirement. One of the turbo product codes discussed in this paper has a rate approximately 0.8, which is a 60% improvement in data rate over the standard convolutional code. It is also shown that the performance of the turbo product code is close to Shannon's capacity limit. Introduction A communications system is used to transmit information from one point to another. As an illustration, consider what occurs when two people communicate with each other using cell phones. A conversation begins when one person speaks into the phone. The phone converts the voice message into a binary information signal and sends it over a channel to a base station. The base station is connected to other base stations, one of which is in the area of the receiving party. The cellular system locates the receiving party and routes the information signal to the appropriate base station. An important feature of this system, for purposes of this paper, is the noise that is present in the communication channels connecting the cell phones to the base stations. This noise causes errors in the receptions of the signals and the error control coding discussed in this paper is introduced into the system to make the error rate acceptable. A digital communications system is made up of three main components: the transmitter, the channel, and the receiver. The information produced by a source must be converted to a digital form 1 This research was supported in part by MIT Lincoln Laboratory and in part by the Office of Naval Research under grant number N00014-00-1-0565 to Clemson University. 3 suitable for the system. The transmitter then couples the information signal to the channel where it undergoes degradation from the transmitter to the receiver, usually resulting from noise and other undesired signals or interference. The receiver’s function is to extract the desired signal at the channel output and convert it to a form suitable for the system user. There are many techniques to consider when designing a communications system. One important measure of performance for any communications system is the rate at which the information is sent. Obviously, it would be advantageous to create a system which transmits data at a high rate. This would allow for signals to be sent faster, reducing the delay and permitting a higher quality voice signal. Unfortunately there is a limit on the rate at which information can be transmitted through a noisy channel. This upper bound is referred to as the capacity of the channel. This limit, commonly referred to as Shannon’s limit [5], states that if the transmission rate R is less than the channel capacity C, then there exists a coding technique that enables transmission over the channel with an arbitrarily small error rate [4]. Thus channel capacity is defined as the maximum rate of reliable information transmission through the channel. In order to achieve this maximum, the signal messages must be coded before they are transmitted over the channel. Error correcting codes are commonly used in today’s communications systems. These codes make it possible to detect and correct errors by adding redundant bits to the message. One form of error correcting code is a block code, which encodes blocks of information symbols into blocks of encoded symbols. Such a code is referred to as an (n,k) code where k is the number of information bits per word and n is the number of encoded bits. The difference n – k is the number of redundant bits that are added. The code rate R = k/n is a measure of the information rate relative to the transmitted bit rate on the channel. The available bandwidth limits the transmitted bit rate, so for a fixed bandwidth the higher the rate of the code the higher the rate at which information is delivered to the destination. Thus, it is desirable to find high rate codes that correct large numbers of errors. In addition to having a high information rate, it is desirable for the communication system to operate at the lowest possible transmitter power. A reduction in the transmitted power results in a decrease in interference to other systems. Such a reduction also decreases energy consumption and preserves battery life in mobile communications equipment. Efficient communication systems are systems that permit a high rate of information to be communicated with the lowest possible power. In this paper, we are interested in codes that meet these 4 objectives. One type of code that has tremendous potential is the turbo product code. Turbo product codes have been found to improve power efficiency and maximize the rate of data transmission. A standard convolutional code that is used today cuts the data rate in half (that is, R = 0.5). One of the turbo product codes described in this paper has a rate approximately 0.8, which is a 60% improvement in data rate over the standard convolutional code. As discussed in this paper the turbo product code also permits a lower transmitter power than the standard convolutional code. Turbo product codes are error-correction codes that offer a wide range of tradeoffs in performance, complexity, and code rate. While they have some similarities to turbo-concatenated codes that have been incorporated into recent standards for future cellular communication, turbo product codes have different structure and characteristics. Turbo product codes are built from product block codes (e.g., pair of extended Hamming codes). Their performance can be within 1 dB of the Shannon limit. While turbo-concatenated codes are found to have an error floor of approximately 10, turbo product codes do not have an error floor. This paper will evaluate turbo product code performance and compare results to the Shannon limit. Turbo Product Code Construction A turbo product code [1] is a relatively large code built from smaller code word blocks [4]. For example, consider the (16,11) extended Hamming code. This code takes 11 information bits, computes 5 parity bits, and appends these 5 parity bits to the information bits to create a 16-bit code word. In systematic form a code word has the form I I I I I I I I I I I P P P P P Here the symbol I denotes an information bit, and P corresponds to a parity bit. A two-dimensional turbo product code may be constructed using a block of information bits as illustrated in Figure 1. The encoder starts with the first row of information bits, calculates and appends the parity bits, denoted PH, and then moves on to the second row. This is repeated for each row. Next, the encoder starts with the first column of information bits, calculates and appends the parity bits for that column, denoted by PV, and moves to the next column. Once the information block is complete, the encoder calculates and appends parity bits onto PH, denoted PVH. It is important to note that PVH = PHV and that different code lengths may be used for the horizontal and vertical blocks. In addition a two-dimensional turbo product code may be expanded to 5 three dimensions. In the illustration of Figure 1, the (8,4) extended Hamming code yields a (64,16) turbo product code. Turbo Product Code Decoding The decoding of a turbo product code is performed one block at a time using iterative decoding. The horizontal blocks are decoded first and then all of the vertical blocks are decoded. Iteration can be done several times to reduce the probability of error. Optimal iterative decoding requires soft-decision decoding. This is based on a soft-decision metric, which is a measure of the likelihood or confidence that the decoder has in each of the bits in the received block. Each decoding iteration builds on the previous decoding performance. Many decoders use the soft-output Viterbi algorithm [5], but there are also other alternatives [3]. Simulation Board Simulating a turbo product code decoder using soft-decision decoding is a very complicated and time-consuming program to run. Thus, it was proposed to use Efficient Channel Coding’s (ECC) Turbo Product Code Evaluation Module [2] to simulate the soft-decision decoder. This board plugs into an ISA slot in a personal computer, and it interacts with the user through a Microsoft Visual C++ program. It encodes and decodes using the AHA 4501 chip which is a turbo product code ASIC that was developed by Advanced Hardware Architectures (AHA) [1]. TPC Encode Source BPSK Modem with AWGN Channel TPC Decode Sink Figure 2 : Block Diagram of BPSK Simulation Figure 1 : Construction of (64,16) Turbo Product Code I I I I PH PH PH PH I I I I PH PH PH PH I I I I PH PH PH PH I I I I PH PH PH PH PV PV PV PV PVH PVH PVH PVH PV PV PV PV PVH PVH PVH PVH PV PV PV PV PVH PVH PVH PVH PV PV PV PV PVH PVH PVH PVH
منابع مشابه
Near-optimum decoding of product codes: block turbo codes
This paper describes an iterative decoding algorithm for any product code built using linear block codes. It is based on soft-input/soft-output decoders for decoding the component codes so that near-optimum performance is obtained at each iteration. This soft-input/soft-output decoder is a Chase decoder which delivers soft outputs instead of binary decisions. The soft output of the decoder is a...
متن کاملPerformance of noncoherent turbo detection on Rayleigh fading channels
In this paper, we are concerned with the performance of turbo codes on Rayleigh fading channels when noncoherent detection is employed. Performance of turbo codes with noncoherent detection on AWGN channels has been analyzed by Hall and Wilson. They compared the performance of turbo codes with the achievable information theoretic channel capacity for noncoherent detection on AWGN channels. We, ...
متن کاملComparison between Turbo Code and Convolutional Product Code (CPC) for Mobile WiMAX
Mobile WiMAX is a broadband wireless solution that enables convergence of mobile and fixed broadband networks through a common wide area broadband radio access technology and flexible network architecture. It adopts Orthogonal Frequency Division Multiple Access (OFDMA) for improved multi-path performance in Non-Line-Of-Sight (NLOS) environments. Scalable OFDMA (SOFDMA) is introduced in the IEEE...
متن کاملTurbo Codes for Noncoherent Channels
Eric K. Hall and Stephen G. Wilson University of Virginia Charlottesville, VA 22903 Abstract In this work, the application of turbo codes to communications systems using noncoherent FSK and DPSK is considered for the AWGN channel. For both cases, the turbo decoder is formulated employing the appropriate channel metrics. For DPSK, a Gaussian metric is formed while FSK utilizes two decision stati...
متن کاملThresholds for Iterative Equalization of Partial Response Channels Using Density Evolution
This paper focuses on the computing of the thresholds for iterative equalization and decoding of partial response channel, such as what are of interest in high density magnetic recording. Extensive simulations on the performance of turbo codes, low density parity check (LDPC) codes and single-parity check turbo product codes (TPC/SPC) over partial response channels reveal very encouraging bit e...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001